package org.wz.complex.work.entity.project.generator;

import jakarta.validation.constraints.NotBlank;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import org.wz.complex.work.anno.ComposeEntity;

import org.wz.complex.work.anno.Deploy;
import org.wz.complex.work.entity.auth.sysinfo.SysinfoMicro;
import org.wz.complex.work.entity.project.code.CodeVue;


@Deploy
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Accessors(chain = true)
@TableName("project_generator_vue")
public class GeneratorVue {

    @TableId(type = IdType.AUTO)
    private Long id;

	/**
	 * 标题
	 */
	@NotBlank(message = "标题不能为空")
	private String title;

	/**
	 * 微服务ID
	 */
	@NotBlank(message = "微服务ID,entity不能为空")
	private Long sysinfoMicroId;

	@ComposeEntity
	@TableField(exist = false) 
	private SysinfoMicro sysinfoMicro;  // entity


	/**
	 * 微服务
	 */
	private String micro;

	/**
	 * 模块
	 */
	@NotBlank(message = "模块不能为空")
	private String module;

	/**
	 * 实体
	 */
	@NotBlank(message = "实体不能为空")
	private String entity;

	/**
	 * vueID
	 */
	@NotBlank(message = "vueID,entity不能为空")
	private Long codeVueId;

	@ComposeEntity
	@TableField(exist = false) 
	private CodeVue codeVue;  // entity

	/**
	 * 部署
	 */
	@NotBlank(message = "部署不能为空")
	private String deploy;

	/**
	 * 表名
	 */
	private String tableName;

	/**
	 * 全路径
	 */
	private String url;






    

}
